//
// Created by hkkzzxz on 24-9-2.
//

#ifndef YUNSHI_EMPLOYEESERVICE_H
#define YUNSHI_EMPLOYEESERVICE_H

// 员工业务逻辑实现类

#include "IEmployeeService.h"

class EmployeeService : public IEmployeeService {
    // 员工注册
    bool employRegister(const std::string &id, const std::string &name, const std::string &phoneNumber,
                        const std::string &password) override;

    // 用户忘记密码重置密码
    bool forgetPassword(const std::string &id, const std::string &name,
                        const std::string &phoneNumber, const std::string &password) override;

    // 修改手机号
    bool modifyPhoneNumber(const std::string &id, const std::string &phoneNumber,
                           const std::string &newPhoneNumber) override;

    // 修改密码
    bool modifyPassword(const std::string &id, const std::string &password,
                        const std::string &newPassword) override;

    // 生成指纹ID
    std::string generateFingerprintID(const std::string &id) override;

    // 指纹考勤
    std::string fingerprintAttendance(const std::string &fingerprintID) override;

    // 上传人脸考勤照片
    bool uploadAttendancePhoto(const std::string &id, const std::string &photo) override;

    // 人脸考勤
    std::string facialAttendance(const std::string &photo) override;

    // 查询今日考勤情况
    std::string checkTodayAttendance(const std::string &id) override;

    // 查询所有考勤情况
    std::string checkAttendance(const std::string &id) override;

    // 根据工号查询姓名
    std::string getName(const std::string &id) override;

private:
    // 考勤
    bool attendance(const std::string &id);

};


#endif //YUNSHI_EMPLOYEESERVICE_H
